Fuzzy preferences in multi-objective optimization (MOO)

ABSTRACT

A method to obtain the Pareto solutions that are specified by human preferences is suggested. The main idea is to convert the fuzzy preferences into interval-based weights. With the help of the dynamically-weighted aggregation method, it is shown to be successful to find the preferred solutions on two test functions with a convex Pareto front. Compared to the method described in “Use of Preferences for GA-based Multi-Objective Optimization” (Proceedings of 1999 Genetic and Evolutionary Computation Conference, pp. 1504-1510, 1999) by Cvetkovic et al., the method according to the invention is able to find a number of solutions instead of only one, given a set of fuzzy preferences over different objectives. This is consistent with the motivation of fuzzy logic.

This application is a 371 of PCT/EP02/14002 filed on Dec. 10, 2002. Thisapplication also claims priority based on application 02001252.2 filedin with the European Patent Office on Jan. 17, 2002 and application02003557.2 filed with the European Patent Office on Feb. 15, 2002.

The present invention relates to a method for the optimization ofmulti-objective problems using evolutionary algorithms, to the use ofsuch a method for the optimization of aerodynamic or hydrodynamic bodiesas well as to a computer software program product for implementing sucha method.

The background of the present invention is the field of evolutionalgorithms. Therefore, with reference to FIG. 1, at first the knowncycle of an evolutionary algorithm will be explained.

In a step S1, the object parameters to be optimized are encoded in astring called ‘individual’. A plurality of such individuals comprisingthe initial parent generation is then generated and the quality(fitness) of each individual in the parent generation is evaluated. In astep S2, the parents are reproduced by applying genetic operators calledmutation and recombination. Thus, a new generation is reproduced in stepS3, which is called the offspring generation. The quality of theoffspring individuals is evaluated using a fitness function that is theobjective of the optimization in step S4. Finally, depending on thecalculated quality value, step S5 selects, possibly stochastically, thebest offspring individuals (survival of the fittest) which are used asparents for the next generation cycle if the termination condition instep S6 is not satisfied.

Before evaluating the quality of each individual, decoding may be neededdepending on the encoding scheme used in the evolutionary algorithm. Itshould be noted that the steps S2, The algorithm of this evolutionaryoptimization can be expressed by the following pseudo-code:

t := 0 encode and initialize P(0) decode and evaluate P(0) do  recombine P(t)   mutate P(t)   decode P(t)   evaluate P(t)   P(t+1) :=select P(t)   encode P(t+1)   t := t + 1 until terminateThereby,

-   -   P(0) denotes the initial population size (t=0),    -   P(t) denotes the offspring population size in the t-th successor        generation (t>0),    -   t is the index for the generation number (t∈N₀).

Such evolutionary algorithms are known to be robust optimizers that arewell-suited for discontinuous and multi-modal objective functions.Therefore, evolutionary algorithms have successfully been applied e.g.to mechanical and aerodynamic optimization problems, includingpreliminary turbine design, turbine blade design, multi-disciplinaryrotor blade design, multi-disciplinary wing platform design and amilitary airframe preliminary design.

For example, details on evolutionary algorithms can be found in“Evolutionary Algorithms in Engineering Applications” (Springer-Verlag,1997) by Dasgupta et al., and “Evolutionary Algorithms in Engineeringand Computer Science” (John Wiley and Sons, 1999) by Miettinnen et al.

In the framework of the present invention, the evolutionary algorithmsare applied to the simultaneous optimization of multiple objectives,which is a typical feature of practical engineering and design problems.The principle multi-objective optimization differs from that in asingle-objective optimization. In single-objective optimization, thetarget is to find the best design solution, which corresponds to theminimum or maximum value of the objective function. On the contrary, ina multi-objective optimization with conflicting objectives, there is nosingle optimal solution. The interaction among different objectivesgives rise to a set of compromise solutions known as the Pareto-optimalsolutions. A definition of ‘Pareto-optimal’ and ‘Pareto front’ can befound in “Multi-Objective Evolutionary Algorithms: Analyzing the Stateof the Art” (Evolutionary Computation, 8(2), pp. 125-147, 2000) by D. A.Van Veldheizen and G. B. Lamont.

Since none of these Pareto-optimal solutions can be identified as betterthan others without any further consideration, the target in amulti-objective optimization is to find as many Pareto-optimal solutionsas possible. Once such solutions are found, it usually requires ahigher-level decisionmaking with other considerations to choose one ofthem for implementation.

Usually, there are two targets in a multi-objective optimization:

-   -   (i) finding solutions close to the true Pareto-optimal        solutions, and    -   (ii) finding solutions that are widely different from each        other.

The first task is desired to satisfy optimality conditions in theobtained solutions. The second task is desired to have no bias towardsany particular objective function.

In dealing with multi-objective optimization problems, classical searchand optimization methods are not efficient, simply because

-   -   most of them cannot find multiple solutions in a single run,        thereby requiring them to be applied as many times as the number        of desired Pareto-optimal solutions,    -   multiple application of these methods do not guarantee finding        widely different Pareto-optimal solutions, and    -   most of them cannot efficiently handle problems with discrete        variables and problems having multiple optimal solutions.

On the contrary, the studies on evolutionary search algorithms, over thepast few years, have shown that these methods can efficiently be used toeliminate most of the difficulties of classical methods mentioned above.Since they use a population of solutions in their search, multiplePareto-optimal solutions can, in principle, be found in one single run.The use of diversity-preserving mechanisms can be added to theevolutionary search algorithms to find widely different Pareto-optimalsolutions.

A large number of evolutionary multi-objective algorithms (EMOA) havebeen proposed. So far, there are three main approaches to evolutionarymulti-objective optimization, namely, aggregation approaches,population-based non-Pareto approaches and Pareto-based approaches. Inthe recent years, the Pareto-based approaches have been gainingincreasing attention in the evolutionary computation community andseveral successful algorithms have been proposed. Unfortunately, thePareto-based approaches are often very time-consuming.

Despite their shortcomings, weighted aggregation approaches tomulti-objective optimization according to the state of the art are veryeasy to implement and computationally efficient. Usually, aggregationapproaches can provide only one Pareto-solution if the weights are fixedusing problem-specific prior knowledge. However, it is also possible tofind more than one Pareto solution using this method by changing theweights during optimization. The weights of the different objectives areencoded in the chromosome to obtain more than one Pareto solutions.Phenotypic fitness sharing is used to keep the diversity of the weightcombinations and mating restrictions are required so that the algorithmcan work properly.

It has been found that the shortcomings of the conventional aggregationapproach can be overcome by systematically changing the weights duringoptimization without any loss of simplicity and efficiency. Threemethods have been proposed to change the weights during optimization toapproximate the Pareto front. The randomly-weighted aggregation (RWA)method dividuals within the population and the weights are redistributedin each generation. In contrast, the dynamically-weighted aggregation(DWA) method changes the weights gradually when the evolution proceeds.If the Pareto-optimal front is concave, the bang-bang weightedaggregation (BWA) can also be used. In order to incorporate preferences,both RWA and DWA can be used.

Randomly Weighted Aggregation

In the framework of evolutionary optimization it is natural to takeadvantage of the population for obtaining multiple Pareto-optimalsolutions in one run of the optimization. On the assumption that thei-th individual in the population has its own weight combination (w₁^(i)(t), w₂ ^(i)(t)) in generation t, the evolutionary algorithm will beable to find different Pareto-optimal solutions. To realize this, it canbe found that the weight combinations need to be distributed uniformlyand randomly among the individuals, and a re-distribution is necessaryin each generation:

${{w_{1}^{i}(t)} = \frac{{rdm}\mspace{14mu}(P)}{P}},{{w_{2}^{i}(t)} = {1.0 - {w_{1}^{i}(t)}}},$wherein

-   -   i denotes the i-th individual in the population (i=1, 2, . . . ,        P),    -   P is the population size (P∈N), and    -   t is the index for the generation number (t∈N₀).

The function rdm (P) generates a uniformly distributed random numberbetween 0 and P. In this way, a uniformly distributed random weightcombination (w₁ ^(i), w₂ ^(i)) among the individuals can random weightcombination (w₁ ^(i), w₂ ^(i)) among the individuals can be obtained,where 0≦w₁ ^(i), w₂ ^(i)≦1 and w₁ ^(i)+w₂ ^(i)=1. In this context, itshould be noted that the weight combinations are regenerated in everygeneration.

Dynamic Weighted Aggregation

In the dynamically-weighted aggregation (DWA) approach, all individualshave the same weight combination, which is changed gradually generationby generation. Once the individuals reach any point on the Pareto front,the slow change of the weights will force the individuals to keep movinggradually along the Pareto front if the Pareto front is convex. If thePareto front is concave, the individuals will still traverse along thePareto front, however, in a different fashion. The change of the weightscan be realized as follows:w ₁(t)=|sin(2nt/F)|,w ₂(t)=1.0−w ₁(t).where t is the number of generation. Here the sine function is usedsimply because it is a plain periodical function between 0 and 1. Inthis case, the weights w₁(t) and w₂(t) will change from 0 to 1periodically from generation to generation. The change frequency can beadjusted by F. The frequency should not be too high so that thealgorithm is able to converge to a solution on the Pareto front. On theother hand, it seems reasonable to let the weight change from 0 to 1 atleast twice during the whole optimization.

In the above methods, it is assumed that all objectives are of the sameimportance. In this case, weights are changed between [0,1] in RWA andDWA to achieve all Pareto-optimal solutions. However, in many real-worldapplications, different objectives may have different importance. Thus,the goal is not to get the whole Pareto front, but only the desired partof the Pareto front. The importance of each objective is usuallyspecified by the human user in term of preferences. For example, for atwo-objective problem, the user may believe that one objective is moreimportant than the other. To achieve the desired Pareto-optimalsolutions, preferences need to be incorporated into multi-objectiveoptimization. Instead of changing the weights between [0,1], they arechanged between [w^(min), w^(max)], where 0≦w^(min)<w^(max)≦1, aredefined by the preferences. Usually, the preferences can be incorporatedbefore, during or after optimization. In this invention, preferenceincorporation before optimization is concerned.

As discussed in “Use of Preferences for GA-based Multi-ObjectiveOptimization” (Proceedings of 1999 Genetic and Evolutionary ComputationConference, pp. 1504-1510, 1999) by Cvetkovic et al., the incorporationof fuzzy preferences before optimization can be realized in two ways:

-   -   Weighted Sum: Use of the preferences as a priori knowledge to        determine the weight for each objective, then direct application        of the weights to sum up the objectives to a scalar. In this        case, only one solution will be obtained.    -   Weighted Pareto Method: The non-fuzzy weight is used to define a        weighted Pareto non-dominance:

$U \succcurlyeq_{w}{V\mspace{14mu}\text{if~~and~~only~~if~~}\frac{1}{k}{\sum\limits_{i = 1}^{k}{w_{i}{I_{\geq}\left( {u_{i},v_{i}} \right)}}}} \geq 1$with the utility sets

-   -   U:={u_(i)|i=1, 2, 3, . . . , k} for u_(i) ∈[0,1] and    -   V:={v_(i)|i=1, 2, 3, . . . , k} for v_(i) ∈[0,1],        where

${I_{\geq}\left( {u_{i},v_{i}} \right)} = \left\{ {{\begin{matrix}1 & {{{for}\mspace{14mu} u_{i}} \geq v_{i}} \\0 & {{{for}\mspace{14mu} u_{i}} < v_{i}}\end{matrix}\mspace{14mu}{and}\mspace{14mu}{\sum\limits_{i = 1}^{k}w_{i}}} = 1.} \right.$

A general procedure for applying fuzzy preferences to multi-objectiveoptimization is illustrated in FIG. 2. It can be seen that before thepreferences can be applied in MOO, they have to be converted into crispweights first. The procedure of conversion is described as follows:

Given L experts (with the indices m=1,2, . . . , L) and their preferencerelation P ^(m), where P ^(m) is a (k×k)-matrix with p_(ij) denoting thelinguistic preference of the objective o_(i) over the objective o_(j)(with the indices i,j=1,2, . . . , k). Then, based on the groupdecision-making method, they can be combined into a single collectivepreference P ^(c). Each element of said preference matrix P ^(c) isdefined by one of the following linguistic terms:

-   -   “much more important” (MMI),    -   “more important” (MI),    -   “equally important” (EI),    -   “less important” (LI), and    -   “much less important” (MLI).

For the sake of simplicity, the superscript c indicating the collectivepreference is omitted in the following text. Before converting thelinguistic terms into real-valued weights, they should at first beconverted into numeric preferences. To this end, it is necessary to usethe following evaluations, to replace the linguistic preferences p_(ij)in the preference matrix, as indicated in “Use of Preferences forGA-based Multi-Objective Optimization” (Proceedings of 1999 Genetic andEvolutionary Computation Conference, pp. 1504-1510) by Cvetkovic et al.

-   -   a is much less important than b        p_(ij)=α, p_(ji)=β    -   a is less important than b        p_(ij)=γ, p_(ji)=δ    -   a is equally important as b        p_(ij)=∈, p_(ji)=∈.

The value of the parameters needs to be assigned by the decision-makingand the following conditions should be satisfied in order not to losethe interpretability of the linguistic terms:α<γ<∈=0.5<δ<β,α+β=1=γ+δ.

Consider an MOO problem with six objectives {o₁, o₂, . . . , o₆} as usedin “Use of Preferences for GA-based Multi-Objective Optimization”(Proceedings of 1999 Genetic and Evolutionary Computation Conference,pp. 1504-1510) by Cvetkovic et al. Suppose that among these sixobjectives o₁ and o₂, o₃ and o₄ are equally important. Thus, there arehave four classes of objectives:c₁:={o₁, o₂}, c₂:={o₃, o₄}, c₃:={o₅} and c₄:={o₆}.

Besides, there are the following preference relations:

-   -   c₁ is much more important than c₂;    -   c₁ is more important than c₃;    -   c₄ is more important than c₁;    -   c₃ is much more important than c₂.

From these preferences, it is easy to get the following preferencematrix:

$\;{\underset{\underset{\_}{\_}}{P} = {\begin{pmatrix}{EI} & {MMI} & {MI} & {LI} \\{MLI} & {EI} & {MLI} & {MLI} \\{LI} & {MMI} & {EI} & {LI} \\{MI} & {MMI} & {MI} & {EI}\end{pmatrix}.}}$From the above fuzzy preference matrix, the following real-valuedpreference relation matrix R are obtained:

$\underset{\underset{\_}{\_}}{R} = {\begin{pmatrix}ɛ & \beta & \delta & \gamma \\\alpha & ɛ & \alpha & \alpha \\\gamma & \beta & ɛ & \gamma \\\delta & \beta & \delta & ɛ\end{pmatrix}.}$

Based on this relation matrix, the weight for each objective can beobtained by:

${w\left( o_{i} \right)} = \frac{S\left( {o_{i},\underset{\underset{\_}{\_}}{R}} \right)}{\sum\limits_{i = 1}^{k}{S\left( {o_{i},\underset{\underset{\_}{\_}}{R}} \right)}}$with

${S\left( {o_{i},\underset{\underset{\_}{\_}}{R}} \right)}:={\sum\limits_{{j = 1},{j \neq i}}^{k}{p_{ij}.}}$

For the above example, this results in

${w_{1} = {w_{2} = \frac{2 - \alpha}{8 + {2\alpha}}}},{w_{3} = {w_{4} = \frac{3\alpha}{8 + {2\alpha}}}},{w_{5} = \frac{1 - \alpha + {2\gamma}}{8 + {2\alpha}}},{and}$$w_{6} = {\frac{3 - \alpha - {2\gamma}}{8 + {2\alpha}}.}$Since α and γ can vary between 0 and 0.5, one needs to heuristicallyspecify a value for α and γ (recall that α<γ) to convert the fuzzypreferences into a single-valued weight combination, which can then beapplied to a conventional weighted aggregation to achieve one solution.

In order to convert fuzzy preferences into one weight combination, it isnecessary to specify a value for α and γ. On the one hand, there are noexplicit rules on how to specify these parameters, on the other hand, alot of information will be lost in this process.

In view of this disadvantage it is the target of the present inventionto improve the use of fuzzy preferences for multi-objectiveoptimization.

This target is achieved by means of the features of the independentclaims. The dependent claims develop further the central idea of thepresent invention.

According to the main aspect of the invention, e.g. fuzzy preferencesare converted into a weight combination with each weight being describedby an interval instead of a single value.

Further objects, advantages and features of the invention will becomeevident for the man skilled in the art when reading the followingdetailed description of the invention and by reference to the figures ofthe enclosed drawings.

FIG. 1 shows a cycle of an evolution strategy,

FIG. 2 shows schematically a procedure to apply-fuzzy preferences inMOO,

FIGS. 3 a, 3 b show the change of weights (w₁ and w₂) with the change ofparameter (α), respectively, and

FIGS. 4 a, 4 b show the change of weights (w₃ and w₄) with the change ofparameters (α and γ), respectively.

According to the underlying invention, linguistic fuzzy preferences canbe converted into a weight combination with each weight being describedby an interval.

FIGS. 3 a, 3 b, 4 a, 4 b show how the value of the parameters affectsthat of the weights. It can be seen from these figures that the weightsvary a lot when the parameters (α, γ) change in the allowed range. Thus,each weight obtained from the fuzzy preferences is an interval on [0,1].Very interestingly, a weight combination in interval values can nicelybe incorporated into a multi-objective optimization with the help of theRWA and DWA, which is explained e.g. in “Evolutionary WeightedAggregation: Why does it Work and How?” (in: Proceedings of Genetic andEvolutionary Computation Conference, pp. 1042-1049, 2001) by Jin et al.

On the assumption that the maximal and minimal value of a weight arew_(max) and w_(min), when the parameters change, the weights are changedduring an optimization algorithm in the following form, which isextended from RWA:

${{w_{1}^{i}(t)} = {w_{1}^{\min} + {\left( {w_{1}^{\max} - w_{1}^{\min}} \right) \cdot \frac{{rdm}\mspace{14mu}(P)}{P}}}},$where t is the generation index. Similarly, by extending the DWA, theweights can also be changed in the following form to find out thepreferred Pareto solutions:w ₁ ^(i)(t)=w ₁ ^(min)+(w ₁ ^(max) −w ₁ ^(min))·|sin(2nt/F)|,where t is the generation index. In this way, the evolutionary algorithmis able to provide a set of Pareto solutions that are reflected by thefuzzy preferences. However, it is recalled that DWA is not able tocontrol the movement of the individuals if the Pareto front is concave,therefore, fuzzy preferences incorporation into MOO using DWA isapplicable to convex Pareto fronts only, whereas the RWA method isapplicable to both convex and concave fronts.

To illustrate the underlying invention, some examples on two-objectiveoptimization using the RWA are presented in the following. In thesimulations, two different fuzzy preferences are considered:

-   -   1. Objective 1 is more important than objective 2;    -   2. Objective 1 is less important than objective 2.

For the first preference, one obtains the following preference matrix:

${\underset{\underset{\_}{\_}}{P} = \begin{pmatrix}0.5 & \delta \\\gamma & 0.5\end{pmatrix}},$with 0.5<δ<1 and 0<γ<0.5. Therefore, the weights for the two objectivesusing the RWA method are:

${{w_{1}^{i}(t)} = {0.5 + {0.5 \cdot \frac{{rdm}(P)}{P}}}},{{w_{2}^{i}(t)} = {1.0 - {{w_{1}^{i}(t)}.}}}$

Similarly, the following weights are obtained for the second preference:

${{w_{1}^{i}(t)} = {0 + {0.5 \cdot \frac{{rdm}(P)}{P}}}},{{w_{2}^{i}(t)} = {1.0 - {{w_{1}^{i}(t)}.}}}$

To summarize, the invention proposes a method to obtain thePareto-optimal solutions that are specified by human preferences. Themain idea is to convert the fuzzy preferences into interval-basedweights. With the help of the RWA and DWA, it is shown to be successfulto find the preferred solutions on two test functions with a convexPareto front. Compared to the method described in “Use of Preferencesfor GA-based Multi-Objective Optimization” (Proceedings of 1999 Geneticand Evolutionary Computation Conference, pp. 1504-1510, 1999) byCvetkovic et al., the method according to the invention is able to finda number of solutions instead of only one, given a set of fuzzypreferences over different objectives. This is consistent with themotivation of fuzzy logic.

Many technical, industrial and business applications are possible forevolutionary optimization. Examples for applications can be found e.g.in “Evolutionary Algorithms in Engineering Applications”(Springer-Verlag, 1997) by Dasgupta et al., and “Evolutionary Algorithmsin Engineering and Computer Science” (John Wiley and Sons, 1999) byMiettinnen et al.

1. A method for multi-objective optimization of a mechanical,aerodynamic or hydrodynamic body using evolutionary algorithms, themethod comprising the steps of: (a) encoding object parameters of themechanical, aerodynamic or hydrodynamic body to be optimized asindividuals; (b) setting up an initial population of the individuals asparents; (c) reproducing a plurality of offspring individuals from theparents, the individuals representing object parameters to be optimized;(d) evaluating quality of the offspring individuals using a fitnessfunction comprising a sum of weighted sub-functions, each weightedsub-function corresponding to an objective of the multiple objectiveoptimization; (e) selecting the one or more offspring individuals havingthe highest evaluated quality value as parents for a next evolutioncycle; (f) changing weights of the weighted sub-functions for the nextcycle within predetermined ranges, a first weight of the weightedsub-functions changing within a first predetermined range, a secondweight of the weighted sub-functions changing within a secondpredetermined range different from the first predetermined range, thefirst predetermined range and the second predetermined rangerepresenting preferences given to objectives of the multiple objectiveoptimization; (g) repeating steps (c) to (f) until a terminationcriterion is met; and (h) outputting one or more offspring individualsafter the termination criterion is met as the optimized objectparameters of the mechanical, aerodynamic or hydrodynamic body.
 2. Themethod of claim 1, further comprising the step of: convertingpreferences of the objectives represented as relative language intoparameterized values to generate the first and second predeterminedranges within which the sub-functions can change.
 3. The method of claim2 further comprising the step of: converting the preferences intoparameterized values comprises assigning values within the first andsecond predetermined ranges to the parameterized values.
 4. The methodof claim 1, wherein the weights of the weighted sub-functions arerandomly re-distributed within the first and second predetermined rangesamong the different offspring individuals in each cycle.
 5. The methodof claim 1, further comprising the step of: gradually changing theweights of the weighted sub-functions within the first and secondpredetermined ranges with change in the cycle.
 6. The method of claim 5,further comprising the step of: changing the weights within thepredetermined ranges according to a periodic function.
 7. The method ofclaim 5, wherein each offspring individual is evaluated using the sameweighted sub-functions in the same cycle.
 8. The method of claim 5,wherein the at least one weight generated from a sine function having anumber of the cycle as its argument.
 9. A computer product formulti-objective optimization of a mechanical, aerodynamic orhydrodynamic body, the computer program product comprising a computerreadable storage medium structured to store instructions executable by aprocessor, the instructions, when executed cause the processor to: (a)encode object parameters of the mechanical, aerodynamic or hydrodynamicbody to be optimized as individuals; (b) set up an initial population ofthe individual as parents; (c) reproduce a plurality of offspringindividuals from the parents, the individuals representing objectparameters to be optimized; (d) evaluate quality of the offspringindividuals using a fitness function comprising a sum of weightedsub-functions, each weighted sub-function corresponding to an objectiveof the multiple objective optimization; (e) select the one or moreoffspring individuals having the highest evaluated quality value asparents for a next evolution cycle; (f) change weights of the weightedsub-functions for the next cycle within predetermined ranges, a firstweight of the weighted sub-functions changing within a firstpredetermined range, a second weight of the weighted sub-functionschanging within a second predetermined range different from the firstpredetermined range, the first predetermined range and the secondpredetermined range representing preferences given to objectives of themultiple objective optimization; (g) repeat steps (a) to (f) until atermination criterion is met; and (h) output one or more offspringindividuals after the termination criterion is met as the optimizedobject parameters of the mechanical, aerodynamic or hydrodynamic body.